<?php

class cAttribution extends BaseController{

	public function index(){
		
		$this->loadView("vMenu");
		$this->loadView("vAttribution");
		
		//On récupère les utilisateurs et groupes
		$utilisateurs = DAO::getAll("Utilisateur");
		$groupes = DAO::getAll("Groupe");
		
		
		foreach ($utilisateurs as $utilisateur){
				
			foreach ($groupes as $groupe){
				//si l'id groupe de l'utilisateur et égal à celui de groupe
				if($utilisateur->getIdGroupe() == $groupe->getId()){
					//on génére un tableau , sur les lignes du tableau sont affichés les utilisateurs correspondant aux groupes
					echo JsUtils::doSomethingOn("#checkUtilisateur","append","'<tr><td>".$utilisateur->getLogin()."</td><td>".$groupe->getLibelle()."</td>'");
				}
			}	
		}
		
		echo JsUtils::postFormAndBindTo("#deconnexion", "click", "cAccueil/deconnexion", "menu","#menu");
		//On ajoute les droits sur utilisateur 
		echo JsUtils::postAndBindTo("#btAddRightUser", "click", "cAttribution/addRightUsers", "{groupe:$(groupe).val(),user:$(user).val()}", "#checkUtilisateur");
	
	}
	
	
	public function addRightUsers(){
		//On test que les variables ne sont pas vide
		if(!empty($_POST['groupe']) && !empty($_POST['user'])){
			$groupe = $_POST['groupe'];
			$user = $_POST['user'];
				
			//On boucle car il est possible des selectionner plusieurs personnes
			foreach ($groupe as $aGroupe){
				foreach ($user as $aUser){
					//Pour chaque élément sélectionné on crée une instance puis on modifi dans la base 
					$user = new Utilisateur($aUser,$aGroupe);
					$ret = DAO::update($user);
				}
			}
			//Si la mise à jour s"est bien pass"ée
			if($ret == TRUE){
					
				$utilisateurs = DAO::getAll("Utilisateur");
				$groupes = DAO::getAll("Groupe");
		
				foreach ($utilisateurs as $utilisateur){
						
					foreach ($groupes as $groupe){
						if($utilisateur->getIdGroupe() == $groupe->getId()){
							//On affiche à nouveau le tableau avec les mise à jour éffectuées juste avant
							echo JsUtils::doSomethingOn("#checkUtilisateur","append","'<tr><td>".$utilisateur->getLogin()."</td><td>".$groupe->getLibelle()."</td>'");
						}
					}	
				}
			
			}
		}
		else{
			echo JsUtils::execute('alert("Veuillez faire votre sélection.")');
		}
	}

}